package com.franklin.ideaplugin.maphelper.completion.result;

import com.franklin.ideaplugin.maphelper.beans.colmember.IColMember;
import com.intellij.codeInsight.lookup.LookupElementBuilder;
import com.intellij.psi.PsiExpression;
import org.jetbrains.annotations.NotNull;

import java.util.List;

/**
 * @author Ye Junhui
 * @since 2024/3/7
 */
public interface IMapLookupElementBuilder {

    /**
     * 是否支持
     *
     * @param psiExpression
     * @return
     */
    boolean support(PsiExpression psiExpression);

    /**
     * 构建提示
     *
     * @param psiExpression
     * @param colMember
     * @return
     */
    @NotNull
    List<LookupElementBuilder> buildLookupElement(PsiExpression psiExpression, IColMember colMember);
}
